package com.wuad.platformwuad.module.study.collection;

import lombok.extern.slf4j.Slf4j;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

/**
 * Map操作方法
 *
 * @author wuaodi
 * 2025/1/6
 */
@Slf4j
public class MapMethod {

    public static void main(String[] args) {
        Map<String, Object> map = new HashMap<>();
        map.put("p1", "111");
        map.put("p2", "222");
        map.put("p3", "333");

        putParam(map);
        log.info("11:{}",map);

        Iterator<Map.Entry<String, Object>> iterator = map.entrySet().iterator();
        while (iterator.hasNext()) {
            Map.Entry<String, Object> entry = iterator.next();
            String key = entry.getKey();
            Object value = entry.getValue();
            // 处理key和value
            System.out.println("key:" + key);
            System.out.println("value:" + value);
        }
    }

    /**
     * 以前的写法都是用传入值操作后再将这个对象返回
     *
     * 今天看到这个这个写法焕焕然一新：
     * 想想之前确实没必要定义和传入值一样的对象来接受并操作返回原对象
     *
     * @param map
     */
    static void putParam(Map<String, Object> map) {
        map.put("p4", "444");
        map.put("p5", "555");
    }
}
